Computing systems typically store large amounts of data. To enhance system performance, data is often stored in a compressed form in storage media, such as, for example, a hard disk, until it is needed by the computing system. When data must be accessed by the computing system, pages of memory that store the data in compressed form are retrieved from storage media and stored in a buffer pool that is part of the computing system's operating memory. The compressed memory pages may be decompressed so that data can be updated, modified, or deleted. The decompressed memory pages may remain in the buffer pool.
Memory pages are periodically evicted from the buffer pool to make room for new pages that contain data currently being accessed by the system. Often, the least recently used compressed memory page is evicted to free up room in the buffer pool for new memory pages. In certain operating circumstances, the least recently used compressed memory page may not be the optimal choice in terms of system performance, and/or memory management.